package com.xinruke.hostels.reservation.interfaces.dto.pms;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.xinruke.hostels.reservation.interfaces.vo.RoomInfoVO;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotNull;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

/**
 * @ClassName BookingQueryResultDTO
 * @CreateDate 2019/7/2
 * @Author FengXinQiang
 * @Version V1.0.0.0
 * @Decription 预订查询结果响应
 */
@ApiModel("预订查询结果响应")
@Data
public class BookingQueryResultDTO {
    @ApiModelProperty(value = "编号")
    private Integer id;

    @ApiModelProperty(value = "订单号")
    private String dingdanhao;

    @ApiModelProperty("酒店名称")
    private String jiudianMingcheng;

    @ApiModelProperty(value = "预订人姓名")
    private String yudingrenxingming;

    @ApiModelProperty(value = "预订人电话")
    private String yudingrendianhua;

    @ApiModelProperty(value = "证件类型")
    private Byte zhengjianleixing;

    @ApiModelProperty(value = "证件号")
    private String zhengjianhao;

    @ApiModelProperty(value = "预住时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date ruzhushijian;

    @ApiModelProperty(value = "预离时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date likaishijian;

    @ApiModelProperty(value = "入住类型 1:全天；2长包；3自用；4免费")
    private Byte ruzhuleixing;

    @ApiModelProperty(value = "客源类型:1散客；2团体；")
    private Byte keyuanleixing;

    @ApiModelProperty(value = "预订类型:1个人；2团体")
    private Byte yudingleixing;

    @ApiModelProperty(value = "来源:1网站；2前台")
    private Byte laiyuan;

    @ApiModelProperty(value = "团队名称")
    private String tuanduimingcheng;

    @ApiModelProperty(value = "单位名称")
    private String danweimingcheng;

    @ApiModelProperty(value = "状态：1已提交；2已入住；3已完成（离店）；9取消；")
    private Byte zhuangtai;

    @ApiModelProperty(value = "订单总价")
    private BigDecimal dingdanzongjia;

    @ApiModelProperty(value = "优惠金额")
    private BigDecimal youhuijine;

    @ApiModelProperty(value = "创建时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date chuangjianshijian;

    @ApiModelProperty(value = "房间集合")
    @NotNull(message = "房间集合不能为空")
    private List<RoomInfoVO> roomVOList;

    @ApiModelProperty(value = "房间信息")
    private String fangjianInfo;
}
